package org.bulu.project.system.service;


import org.bulu.project.system.model.entity.Favorite;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public interface FavoriteService {
    /**
     * 根据用户id获取收藏夹列表id
     * @param id   用户ID
     * @return  收藏夹列表
     */
    List<Integer> getFavorites(Integer id);

    /**
     * 创建一个收藏夹
     * @param uid   用户ID
     * @param title 标题
     * @param desc  简介
     * @param visible   是否公开收藏夹 0不公开 1公开
     * @return 返回新创建的这个收藏夹的信息
     */
    Favorite addFavorite(Integer uid, String title, String desc, Integer visible);



    int updateFavorite(Favorite favorite);

    /**
     * 删除收藏夹，将会把其中的全部视频从收藏夹中移除
     * @param fid   收藏夹ID
     * @param uid   用户ID（判断是否创建者）
     */
    int delFavorite(Integer fid, Integer uid);

    //根据收藏夹id查询收藏夹信息
    Favorite getFavoriteById(Integer fid);
}
